/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package com.ventas.action;

import static com.opensymphony.xwork2.Action.ERROR;
import static com.opensymphony.xwork2.Action.SUCCESS;
import com.opensymphony.xwork2.ActionSupport;
import com.ventas.bean.Categoria;
import com.ventas.bean.Cliente;
import com.ventas.bean.Producto;
import com.ventas.dao.CategoriaDao;
import com.ventas.dao.ClienteDao;
import com.ventas.dao.ProductoDao;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author jesus
 */
public class ClienteAction extends ActionSupport {
    
      private List<Cliente> listadoClientes = null;
      
       private List<Cliente> listadoClientesFrecuentes = null;
    Cliente cliente;
    
    //INGRESO
    String  raz;
    String dir;
     String ruc;

    public List<Cliente> getListadoClientesFrecuentes() {
        return listadoClientesFrecuentes;
    }

    public void setListadoClientesFrecuentes(List<Cliente> listadoClientesFrecuentes) {
        this.listadoClientesFrecuentes = listadoClientesFrecuentes;
    }

     
    public List<Cliente> getListadoClientes() {
        return listadoClientes;
    }

    public void setListadoClientes(List<Cliente> listadoClientes) {
        this.listadoClientes = listadoClientes;
    }

    public Cliente getCliente() {
        return cliente;
    }

    public void setCliente(Cliente cliente) {
        this.cliente = cliente;
    }

    public String getRaz() {
        return raz;
    }

    public void setRaz(String raz) {
        this.raz = raz;
    }

    public String getDir() {
        return dir;
    }

    public void setDir(String dir) {
        this.dir = dir;
    }

    public String getRuc() {
        return ruc;
    }

    public void setRuc(String ruc) {
        this.ruc = ruc;
    }
      
     
      public String cargaIngresoCliente() throws Exception {
       
        try {            
            System.out.println("Exito cargaSelectMarcasAction");
            ListadoClientes();
        } catch (Exception e) {
            System.out.println("Error cargaSelectMarcasAction" + e.getMessage());
            e.printStackTrace();
        }
        return SUCCESS;
    }
    
    
    public String ListadoClientes() throws Exception {
       
        listadoClientes= new ArrayList<>();
        listadoClientesFrecuentes= new ArrayList<>();
        
     
        try {
            ClienteDao clienteDao = new ClienteDao();
            
            listadoClientes=clienteDao.listadoClienteActivos();
            listadoClientesFrecuentes=clienteDao.listadoClientesFrecuentes();
            
            System.out.println("Exito ");
        } catch (Exception e) {
            System.out.println("Error de Action" + e.getMessage());
            e.printStackTrace();
        }
        if (listadoClientes.isEmpty()) {
            return ERROR;
        } else {
            return SUCCESS;
        }
    }
    
   
      public String IngresoCliente() throws Exception {
        boolean resultado = false;
        try {
           ClienteDao clienteDao = new ClienteDao();
                   
            Cliente cliente = new Cliente();
            
            
            cliente.setCli_razSocial(raz);
            cliente.setCli_dirFiscal(dir);
            cliente.setCli_ruc(ruc);
                   
                       
            resultado = clienteDao.IngresoClienteDao(cliente);
            System.out.println("Exito de Action-Ingreso");
        } catch (Exception e) {
            System.out.println("Error de Action" + e.getMessage());
            e.printStackTrace();
        }
        cargaIngresoCliente();
        ListadoClientes();
        if (resultado) {
            addActionMessage("Ingreso Exitoso");
            return SUCCESS;
            
        } else {
            addActionError("No se pudo Ingresar");
            return ERROR;
        }
    }
    
    
}
    

